#pragma once

#include "Instruction.h"
#include "Value.h"
#include <string>
#include "LocalVariable.h"
#include "GlobalVariable.h"
#include "Function.h"
#include "VoidType.h"
#include "PointerType.h"
class ZeroSetInstruction : public Instruction {
public:
    // 参数顺序：ptr, arrayType
    ZeroSetInstruction(Function* func, Value* ptr, Type* arrayType);
    // 转为字符串
    void toString(std::string& str) override;

private:
    Value* ptr_;        // 存储目标地址
    Type* arrayType_;   // 数组类型信息
};